600
I am using Layout property to sort multiple columns at once. The problem is that all items get expanded. How do I prevent that

local var_Column,var_Column1 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("P1")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:PartialCheck := true
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("P2")}
	var_Column1:[Def,exCellHasCheckBox] := true
	var_Column1:PartialCheck := true
	var_Column1:FormatColumn := "1 index ``"
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root")
	var_Items:InsertItem(h,nil,"Child A")
	var_Items:InsertItem(h,nil,"Child B")
	var_Items:InsertItem(h,nil,"Child A")
	var_Items:InsertItem(h,nil,"Child B")
	var_Items:AddItem("Root")
	var_Items:AddItem("Root")
oDCOCX_Exontrol1:SingleSort := false
oDCOCX_Exontrol1:Layout := "multiplesort=" + CHR(34) + "C0:1 C1:2" + CHR(34) + ";collapse=" + CHR(34) + "" + CHR(34) + ""
oDCOCX_Exontrol1:EndUpdate()

599
How can I get ride / hide the image being dragged by OLE Drag and Drop
METHOD OCX_Exontrol1OLEStartDrag(Data,AllowedEffects) CLASS MainDialog
	// OLEStartDrag event - Occurs when the OLEDrag method is called.
	// Data.SetData("data to drag")
	AllowedEffects := 1
RETURN NIL

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:OLEDropMode := exOLEDropManual
oDCOCX_Exontrol1:[Background,exDragDropAfter] := RGB(255,255,255)
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:Columns:Add("Default")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true

598
How can I export checked items only

local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:MarkSearchColumn := false
var_Columns := oDCOCX_Exontrol1:Columns
	IColumn{var_Columns:Add("C1")}:[Def,exCellHasCheckBox] := true
	IColumn{var_Columns:Add("C2")}:FormatColumn := "1 index `A-Z`"
	IColumn{var_Columns:Add("C3")}:FormatColumn := "100 index ``"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item 1")
	var_Items:[CellState,var_Items:AddItem("Item 2"),0] := 1
	var_Items:[CellState,var_Items:AddItem("Item 3"),0] := 1
oDCOCX_Exontrol1:EndUpdate()
OutputDebugString(String2Psz( "Export CSV Checked Items Only:" ))
OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:Export("","chk")) ))

597
How can I export a hidden column

local var_Column,var_Column1 as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:MarkSearchColumn := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("C1")
	var_Column := IColumn{var_Columns:Add("C2")}
		var_Column:FormatColumn := "1 index `A-Z`"
		var_Column:Visible := false
	var_Column1 := IColumn{var_Columns:Add("C3")}
		var_Column1:FormatColumn := "100 index ``"
		var_Column1:Visible := false
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item 1")
	var_Items:AddItem("Item 2")
	var_Items:AddItem("Item 3")
oDCOCX_Exontrol1:EndUpdate()
OutputDebugString(String2Psz( "Export CSV Hidden Columns (1,2):" ))
OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:Export("","|1,2")) ))

596
I'm trying to use automatic numbering of the outline. How can I have A, B, C for root items, 1, 2, 3 for the sub-items, and a, b, c for sub-sub-items (sample 3)

local var_Column as IColumn
local var_Columns as IColumns
local var_Items as IItems
local h,hChild as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:DrawGridLines := exRowLines
oDCOCX_Exontrol1:AutoDrag := exAutoDragPositionAny
oDCOCX_Exontrol1:HasLines := exSolidLine
oDCOCX_Exontrol1:Indent := 16
oDCOCX_Exontrol1:MarkSearchColumn := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Column := IColumn{var_Columns:Add("")}
		var_Column:[Def,exCellCaptionFormat] := 1
		var_Column:FormatColumn := "((1:=(0 :=(1 rpos '.|A-Z||a-z|')) rfind `.`) < 0 ? `<b>` + =:0 + `` :  (=:0 mid (1 + 1 + =:1) )  + `)` ) + ` ` + value"
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root")
	var_Items:InsertItem(h,nil,"Child")
	hChild := var_Items:InsertItem(h,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(h,nil,"Child")
	var_Items:[ExpandItem,0] := true
	h := var_Items:AddItem("Root")
	var_Items:InsertItem(h,nil,"Child")
	hChild := var_Items:InsertItem(h,nil,"Child")
	var_Items:[CellState,hChild,0] := 1
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(h,nil,"Child")
oDCOCX_Exontrol1:EndUpdate()

595
I'm trying to use automatic numbering of the outline. How can I have A, B, C for root items, 1, 2, 3 for the sub-items, and a, b, c for sub-sub-items (sample 2)

local var_Column as IColumn
local var_Columns as IColumns
local var_Items as IItems
local h,hChild as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:GridLineColor := RGB(190,190,190)
oDCOCX_Exontrol1:DrawGridLines := exRowLines
oDCOCX_Exontrol1:AutoDrag := exAutoDragPositionAny
oDCOCX_Exontrol1:HasLines := exSolidLine
oDCOCX_Exontrol1:Indent := 16
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Default")
	var_Column := IColumn{var_Columns:Add("")}
		var_Column:[Def,exCellCaptionFormat] := 1
		var_Column:[Def,exCellPaddingRight] := 4
		var_Column:AllowSizing := false
		var_Column:Width := 36
		var_Column:Position := 0
		var_Column:FormatColumn := "(1:=(0 :=(1 rpos '.|A-Z||a-z|')) rfind `.`) < 0 ? `<b>` + =:0 : (`............` left 2 * (=:0 count `.`)) + (=:0 mid (1 + 1 + =:1) ) "
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root")
	var_Items:InsertItem(h,nil,"Child")
	hChild := var_Items:InsertItem(h,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(h,nil,"Child")
	var_Items:[ExpandItem,0] := true
	h := var_Items:AddItem("Root")
	var_Items:InsertItem(h,nil,"Child")
	hChild := var_Items:InsertItem(h,nil,"Child")
	var_Items:[CellState,hChild,0] := 1
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(h,nil,"Child")
oDCOCX_Exontrol1:EndUpdate()

594
I'm trying to use automatic numbering of the outline. How can I have A, B, C for root items, 1, 2, 3 for the sub-items, and a, b, c for sub-sub-items (sample 1)

local var_Column as IColumn
local var_Columns as IColumns
local var_Items as IItems
local h,hChild as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:DrawGridLines := exRowLines
oDCOCX_Exontrol1:AutoDrag := exAutoDragPositionAny
oDCOCX_Exontrol1:HasLines := exSolidLine
oDCOCX_Exontrol1:Indent := 16
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Default")
	var_Column := IColumn{var_Columns:Add("")}
		var_Column:[Def,exCellCaptionFormat] := 1
		var_Column:[Def,exCellPaddingRight] := 4
		var_Column:Alignment := RightAlignment
		var_Column:AllowSizing := false
		var_Column:Width := 24
		var_Column:Position := 0
		var_Column:FormatColumn := "(1:=(0 :=(1 rpos '.|A-Z||a-z|')) rfind `.`) < 0 ? `<b>` + =:0 : `<i>` + (=:0 mid (1 + 1 + =:1) ) "
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root")
	var_Items:InsertItem(h,nil,"Child")
	hChild := var_Items:InsertItem(h,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(h,nil,"Child")
	var_Items:[ExpandItem,0] := true
	h := var_Items:AddItem("Root")
	var_Items:InsertItem(h,nil,"Child")
	hChild := var_Items:InsertItem(h,nil,"Child")
	var_Items:[CellState,hChild,0] := 1
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(hChild,nil,"Child")
	var_Items:InsertItem(h,nil,"Child")
oDCOCX_Exontrol1:EndUpdate()

593
Is it possible to have a different alignment for parts of the cell's caption

local var_Column as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:TreeColumnIndex := -1
oDCOCX_Exontrol1:DrawGridLines := exRowLines
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Default")}
	var_Column:[Def,exCellHasCheckBox] := true
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellHAlignment,var_Items:AddItem("all-left"),0] := LeftAlignment
	var_Items:[CellHAlignment,var_Items:AddItem("all-center"),0] := CenterAlignment
	var_Items:[CellHAlignment,var_Items:AddItem("all-right"),0] := RightAlignment
	h := var_Items:AddItem("left<c>center<r>right")
	var_Items:[CellCaptionFormat,h,0] := exHTML
oDCOCX_Exontrol1:EndUpdate()

592
I have a column with Def(exCellSingleLine) property on False, word-wrapping, and I am wondering if possible to update the column's content while user is resizing it
local var_Column,var_Column1 as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Columns := oDCOCX_Exontrol1:Columns
	var_Column := IColumn{var_Columns:Add("MultipleLine")}
		var_Column:Width := 32
		var_Column:[Def,exCellSingleLine] := false
		var_Column:[Def,exColumnResizeContiguously] := true
	var_Column1 := IColumn{var_Columns:Add("SingleLine")}
		var_Column1:[Def,exCellSingleLine] := false
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("This is a bit of long text that should break the line"),1] := "This is a bit of long text that should break the line"
oDCOCX_Exontrol1:EndUpdate()

591
How do I sort the index column as numeric

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:[CellData,Item,1] := var_Items:[ItemToIndex,Item]
RETURN NIL

local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:DrawGridLines := exAllLines
oDCOCX_Exontrol1:ColumnAutoResize := true
oDCOCX_Exontrol1:ShowFocusRect := false
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Next")}
	var_Column:[Def,exCellPaddingLeft] := 4
	var_Column:[Def,exHeaderPaddingLeft] := 4
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Index")}
	var_Column1:AllowSizing := false
	var_Column1:Width := 48
	var_Column1:FormatColumn := "(((0 := (1 index ``)) mod 3) case ( default: ``; 0 : `<r><fgcolor=B0B0B0>`; 1: ``; 2 : `<c><fgcolor=808080>` )) + str(=:0)"
	var_Column1:[Def,exCellCaptionFormat] := 1
	var_Column1:SortType := SortUserData
	var_Column1:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item 1")
	var_Items:AddItem("Item 2")
	var_Items:AddItem("Item 3")
	var_Items:AddItem("Item 4")
	var_Items:AddItem("Item 5")
	var_Items:AddItem("Item 6")
	var_Items:AddItem("Item 7")
	var_Items:AddItem("Item 8")
	var_Items:AddItem("Item 9")
	var_Items:AddItem("Item 10")
oDCOCX_Exontrol1:EndUpdate()

590
How can I put icons/images into buttons

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := true
oDCOCX_Exontrol1:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("C+B")}
	var_Column:AllowSizing := false
	var_Column:Width := 48
	var_Column:FormatColumn := "` <img>` + ( 1 + (1 index ``) mod 3 ) + `</img> `"
	var_Column:[Def,exCellCaptionFormat] := 1
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:[Def,exCellHasButton] := true
	var_Column:[Def,exCellButtonAutoWidth] := true
oDCOCX_Exontrol1:Columns:Add("")
oDCOCX_Exontrol1:DrawGridLines := exVLines
oDCOCX_Exontrol1:DefaultItemHeight := 20
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("")
	var_Items:AddItem("")
	var_Items:AddItem("")
	var_Items:AddItem("")
	var_Items:AddItem("")
	var_Items:AddItem("")
	var_Items:AddItem("")
	var_Items:AddItem("")
oDCOCX_Exontrol1:EndUpdate()

589
Is it possible to have a CheckBox and Button TOGETHER on all cells in a column

METHOD OCX_Exontrol1CellButtonClick(Item,ColIndex) CLASS MainDialog
	// CellButtonClick event - Fired after the user clicks on the cell of button type. 
	OutputDebugString(String2Psz( "CellButtonClick" ))
	OutputDebugString(String2Psz( AsString(Item) ))
RETURN NIL

METHOD OCX_Exontrol1CellStateChanged(Item,ColIndex) CLASS MainDialog
	// CellStateChanged event - Fired after cell's state has been changed.
	OutputDebugString(String2Psz( "CellStateChanged" ))
	OutputDebugString(String2Psz( AsString(Item) ))
RETURN NIL

local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := true
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("")}
	var_Column:AllowSizing := false
	var_Column:Width := 32
	var_Column:FormatColumn := "1 index ``"
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Def")}
	var_Column1:AllowSizing := false
	var_Column1:Width := 48
	var_Column1:FormatColumn := "`     `"
	var_Column1:[Def,exCellHasCheckBox] := true
	var_Column1:[Def,exCellHasButton] := true
	var_Column1:[Def,exCellButtonAutoWidth] := true
oDCOCX_Exontrol1:Columns:Add("")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("")
	var_Items:AddItem("")
	var_Items:AddItem("")
	var_Items:AddItem("")
	var_Items:AddItem("")
	var_Items:AddItem("")
	var_Items:AddItem("")
	var_Items:AddItem("")
oDCOCX_Exontrol1:EndUpdate()

588
Does filtering work with umlauts / accents characters
local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Names")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterType := exPattern
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Mantel")
	var_Items:AddItem("Mechanik")
	var_Items:AddItem("Motor")
	var_Items:AddItem("Murks")
	var_Items:AddItem("Märchen")
	var_Items:AddItem("Möhren")
	var_Items:AddItem("Mühle")
	var_Items:AddItem("Sérigraphie")
oDCOCX_Exontrol1:Columns:[Item,0]:Filter := "*ä*"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

587
The Items.FirstVisibleItem property is read-only. How can I change the first visible item

local var_Column as IColumn
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:MarkSearchColumn := false
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:ContinueColumnScroll := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos")}
	var_Column:Position := 0
	var_Column:FormatColumn := "0 index ``"
	var_Column:Width := 32
	var_Column:[Def,exCellBackColor] := 15790320
oDCOCX_Exontrol1:[ScrollPos,true] := 13
oDCOCX_Exontrol1:EndUpdate()

586
How FullPath method works

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:Columns:Add("C1")
oDCOCX_Exontrol1:Columns:Add("C2")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root")
	var_Items:[CellCaption,h,1] := "A"
	var_Items:[CellCaption,var_Items:InsertItem(h,nil,"Child 1"),1] := "B"
	var_Items:[CellCaption,var_Items:InsertItem(h,nil,"Child 2"),1] := "C"
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:SearchColumnIndex := 1
OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:SearchColumnIndex) ))
OutputDebugString(String2Psz( oDCOCX_Exontrol1:Items:[FullPath,:[ItemByIndex,2]] ))
oDCOCX_Exontrol1:SearchColumnIndex := 0
OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:SearchColumnIndex) ))
OutputDebugString(String2Psz( oDCOCX_Exontrol1:Items:[FullPath,:[ItemByIndex,2]] ))
oDCOCX_Exontrol1:EndUpdate()

585
How can I filter for multiple captions on a single column, using OR clause

local var_Column as IColumn
local var_Columns as IColumns
local var_Items as IItems
local h0 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := true
oDCOCX_Exontrol1:ContinueColumnScroll := false
oDCOCX_Exontrol1:MarkSearchColumn := true
oDCOCX_Exontrol1:SearchColumnIndex := 1
oDCOCX_Exontrol1:FilterBarPromptVisible := true
var_Columns := oDCOCX_Exontrol1:Columns
	IColumn{var_Columns:Add("Name")}:Width := 96
	var_Column := IColumn{var_Columns:Add("Title")}
		var_Column:Width := 96
	var_Columns:Add("City")
var_Items := oDCOCX_Exontrol1:Items
	h0 := var_Items:AddItem("Nancy Davolio")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "Seattle"
	h0 := var_Items:AddItem("Andrew Fuller")
	var_Items:[CellCaption,h0,1] := "Vice President, Sales"
	var_Items:[CellCaption,h0,2] := "Tacoma"
	var_Items:[SelectItem,h0] := true
	h0 := var_Items:AddItem("Janet Leverling")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "Kirkland"
	h0 := var_Items:AddItem("Margaret Peacock")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "Redmond"
	h0 := var_Items:AddItem("Steven Buchanan")
	var_Items:[CellCaption,h0,1] := "Sales Manager"
	var_Items:[CellCaption,h0,2] := "London"
	h0 := var_Items:AddItem("Michael Suyama")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "London"
	h0 := var_Items:AddItem("Robert King")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "London"
	h0 := var_Items:AddItem("Laura Callahan")
	var_Items:[CellCaption,h0,1] := "Inside Sales Coordinator"
	var_Items:[CellCaption,h0,2] := "Seattle"
	h0 := var_Items:AddItem("Anne Dodsworth")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "London"
oDCOCX_Exontrol1:FilterBarPromptColumns := "1"
oDCOCX_Exontrol1:FilterBarPromptPattern := "Vice Inside"
oDCOCX_Exontrol1:FilterBarPromptType := exFilterPromptContainsAny
oDCOCX_Exontrol1:EndUpdate()

584
How can I filter for multiple captions on a single column, using AND clause

local var_Column as IColumn
local var_Columns as IColumns
local var_Items as IItems
local h0 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := true
oDCOCX_Exontrol1:ContinueColumnScroll := false
oDCOCX_Exontrol1:MarkSearchColumn := true
oDCOCX_Exontrol1:SearchColumnIndex := 1
oDCOCX_Exontrol1:FilterBarPromptVisible := true
var_Columns := oDCOCX_Exontrol1:Columns
	IColumn{var_Columns:Add("Name")}:Width := 96
	var_Column := IColumn{var_Columns:Add("Title")}
		var_Column:Width := 96
	var_Columns:Add("City")
var_Items := oDCOCX_Exontrol1:Items
	h0 := var_Items:AddItem("Nancy Davolio")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "Seattle"
	h0 := var_Items:AddItem("Andrew Fuller")
	var_Items:[CellCaption,h0,1] := "Vice President, Sales"
	var_Items:[CellCaption,h0,2] := "Tacoma"
	var_Items:[SelectItem,h0] := true
	h0 := var_Items:AddItem("Janet Leverling")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "Kirkland"
	h0 := var_Items:AddItem("Margaret Peacock")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "Redmond"
	h0 := var_Items:AddItem("Steven Buchanan")
	var_Items:[CellCaption,h0,1] := "Sales Manager"
	var_Items:[CellCaption,h0,2] := "London"
	h0 := var_Items:AddItem("Michael Suyama")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "London"
	h0 := var_Items:AddItem("Robert King")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "London"
	h0 := var_Items:AddItem("Laura Callahan")
	var_Items:[CellCaption,h0,1] := "Inside Sales Coordinator"
	var_Items:[CellCaption,h0,2] := "Seattle"
	h0 := var_Items:AddItem("Anne Dodsworth")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "London"
oDCOCX_Exontrol1:FilterBarPromptColumns := "1"
oDCOCX_Exontrol1:FilterBarPromptPattern := "Vice Sales"
oDCOCX_Exontrol1:FilterBarPromptType := exFilterPromptContainsAll
oDCOCX_Exontrol1:EndUpdate()

583
Can I set the search box / filterbarprompt to invisible, so I can use my own input and *string* via VBA
local var_Columns as IColumns
local var_Items as IItems
local h0 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := true
oDCOCX_Exontrol1:ContinueColumnScroll := false
oDCOCX_Exontrol1:MarkSearchColumn := false
oDCOCX_Exontrol1:SearchColumnIndex := 1
oDCOCX_Exontrol1:FilterBarHeight := 0
oDCOCX_Exontrol1:FilterBarPromptVisible := true
var_Columns := oDCOCX_Exontrol1:Columns
	IColumn{var_Columns:Add("Name")}:Width := 96
	IColumn{var_Columns:Add("Title")}:Width := 96
	var_Columns:Add("City")
var_Items := oDCOCX_Exontrol1:Items
	h0 := var_Items:AddItem("Nancy Davolio")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "Seattle"
	h0 := var_Items:AddItem("Andrew Fuller")
	var_Items:[CellCaption,h0,1] := "Vice President, Sales"
	var_Items:[CellCaption,h0,2] := "Tacoma"
	var_Items:[SelectItem,h0] := true
	h0 := var_Items:AddItem("Janet Leverling")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "Kirkland"
	h0 := var_Items:AddItem("Margaret Peacock")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "Redmond"
	h0 := var_Items:AddItem("Steven Buchanan")
	var_Items:[CellCaption,h0,1] := "Sales Manager"
	var_Items:[CellCaption,h0,2] := "London"
	h0 := var_Items:AddItem("Michael Suyama")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "London"
	h0 := var_Items:AddItem("Robert King")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "London"
	h0 := var_Items:AddItem("Laura Callahan")
	var_Items:[CellCaption,h0,1] := "Inside Sales Coordinator"
	var_Items:[CellCaption,h0,2] := "Seattle"
	h0 := var_Items:AddItem("Anne Dodsworth")
	var_Items:[CellCaption,h0,1] := "Sales Representative"
	var_Items:[CellCaption,h0,2] := "London"
oDCOCX_Exontrol1:FilterBarPromptPattern := "London"
oDCOCX_Exontrol1:EndUpdate()

582
How to load a hierarchy using the control's DataSource property (Parent-ID-Relation)

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:SetParent(Item,var_Items:[FindItem,var_Items:[CellCaption,Item,"ReportsTo"],"EmployeeID",nil])
RETURN NIL

local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:ContinueColumnScroll := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("SELECT * FROM Employees ORDER BY ReportsTo","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:Items:[ExpandItem,0] := true
oDCOCX_Exontrol1:EndUpdate()

581
Is there any option to control where I can drop the items when using the AutoDrag property
METHOD OCX_Exontrol1AllowAutoDrag(Item,NewParent,InsertA,InsertB,Cancel) CLASS MainDialog
	// AllowAutoDrag event - Occurs when the user drags the item between InsertA and InsertB as child of NewParent.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		OutputDebugString(String2Psz( "NewParent" ))
		OutputDebugString(String2Psz( AsString(var_Items:[CellCaption,NewParent,0]) ))
		OutputDebugString(String2Psz( "After" ))
		OutputDebugString(String2Psz( AsString(var_Items:[CellCaption,InsertA,0]) ))
		OutputDebugString(String2Psz( "Before" ))
		OutputDebugString(String2Psz( AsString(var_Items:[CellCaption,InsertB,0]) ))
	Cancel := true
RETURN NIL

local var_Items as IItems
local h,h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:AutoDrag := exAutoDragPositionAny
oDCOCX_Exontrol1:LinesAtRoot := exNoLinesAtRoot
oDCOCX_Exontrol1:HasLines := exThinLine
oDCOCX_Exontrol1:ShowFocusRect := false
oDCOCX_Exontrol1:Columns:Add("Task")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Group 1")
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemBold,h] := true
	h1 := var_Items:InsertItem(h,nil,"Task 1")
	h2 := var_Items:InsertItem(h,nil,"Task 2")
	h3 := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Group 2")
	var_Items:[ItemBold,h] := true
	var_Items:[ItemDivider,h] := 0
oDCOCX_Exontrol1:EndUpdate()

580
The FindPath is not case sensitive. How can I make it work case sensitive

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:Columns:Add("Default")
oDCOCX_Exontrol1:ASCIIUpper := ""
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("L:")
	var_Items:InsertItem(h,nil,"test")
	var_Items:InsertItem(h,nil,"Test")
	var_Items:InsertItem(h,nil,"TEST")
	var_Items:[ExpandItem,h] := true
	var_Items:[ItemBold,var_Items:[FindPath,"L:\TEST"]] := true
oDCOCX_Exontrol1:EndUpdate()

579
How do I enable / display a tooltip while user selects new items from the drop down filter panel

local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Items")}
	var_Column:DisplayFilterButton := true
	var_Column:DisplayFilterPattern := false
	var_Column:FilterList := exShowExclude | exEnableToolTip | exShowFocusItem | exShowCheckBox
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item 1")
	var_Items:AddItem("Item 2")
	var_Items:AddItem("Item 3")
	var_Items:AddItem("Item 4")
var_Column1 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column1:FilterType := exFilterExclude | exFilter
	var_Column1:Filter := "Item 1|Item 4"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

578
How can I align captions of items with checkbox, with items with no checkbox

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Default")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellImages,var_Items:AddItem(0),0] := "1"
	var_Items:[CellHasCheckBox,var_Items:AddItem(1),0] := true
	var_Items:[CellImages,var_Items:AddItem(2),0] := "1"
oDCOCX_Exontrol1:EndUpdate()

577
The control does not ensure the item to fit the control's client area once the user clicks the cell's button or check box. What can be done
METHOD OCX_Exontrol1MouseDown(Button,Shift,X,Y) CLASS MainDialog
	// MouseDown event - Occurs when the user presses a mouse button.
	// Items.EnsureVisibleItem(ItemFromPoint(-1,-1,c,hit))

RETURN NIL

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:TreeColumnIndex := -1
oDCOCX_Exontrol1:SelForeColor := oDCOCX_Exontrol1:ForeColor
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Buttons")}
	var_Column:Alignment := CenterAlignment
	var_Column:[Def,exCellHasButton] := true
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Button A")
	var_Items:AddItem("Button B")
	var_Items:AddItem("Button C")
oDCOCX_Exontrol1:EndUpdate()

576
Does the title of the cell's tooltip supports HTML format

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("")}
	var_Column:Caption := ""
	var_Column:HTMLCaption := "Column"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellToolTip,var_Items:AddItem("tooltip w/h different title"),0] := "<c><b><fgcolor=FF0000>Title</fgcolor></b><br>This is bit of text that's shown when the user hovers the cell. This shows the title centered with a different color."
oDCOCX_Exontrol1:EndUpdate()

575
How do I specify a different title for the cell's tooltip

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("")}
	var_Column:Caption := "This is the title"
	var_Column:HTMLCaption := "Column"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellToolTip,var_Items:AddItem("tooltip w/h different title"),0] := "This is bit of text that's shown when the user hovers the cell."
oDCOCX_Exontrol1:EndUpdate()

574
The cell's tooltip displays the column's caption in its title. How can I get ride of that

local var_Column as IColumn
local var_Columns as IColumns
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("C1")
	var_Columns:Add("C2")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("tooltip w/h caption")
	var_Items:[CellToolTip,h,0] := "This is bit of text that's shown when the user hovers the cell. This shows the column's caption in the title."
	var_Items:[CellCaption,h,1] := "tooltip no caption"
	var_Items:[CellToolTip,h,1] := "This is bit of text that's shown when the user hovers the cell. This shows no column's caption in the title."
var_Column := oDCOCX_Exontrol1:Columns:[Item,"C2"]
	var_Column:HTMLCaption := var_Column:Caption
	var_Column:Caption := ""
oDCOCX_Exontrol1:EndUpdate()

573
How can I programmatically show the column's filter

METHOD OCX_Exontrol1RClick() CLASS MainDialog
	// RClick event - Fired when right mouse button is clicked
	local i as USUAL
	i := oDCOCX_Exontrol1:[ItemFromPoint,-1,-1,c,hit]
	oDCOCX_Exontrol1:Columns:[Item,c]:ShowFilter("-1,-1,128,128")
RETURN NIL

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ShowFocusRect := false
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Items ")}
	var_Column:DisplayFilterPattern := false
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item 1")
	var_Items:AddItem("Item 2")
	var_Items:AddItem("Item 3")
oDCOCX_Exontrol1:EndUpdate()

572
I want to be able to click on one of the headers, and sort by other column. How can I do that (method 2)

METHOD OCX_Exontrol1ColumnClick(Column) CLASS MainDialog
	// ColumnClick event - Fired after the user clicks on column's header.
	// Column.SortOrder = 1
	oDCOCX_Exontrol1:SortOnClick := exDefaultSort
	oDCOCX_Exontrol1:Columns:[Item,"Sort"]:SortOrder := SortAscending
	oDCOCX_Exontrol1:SortOnClick := exUserSort
RETURN NIL

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:MarkSearchColumn := false
oDCOCX_Exontrol1:SortOnClick := exUserSort
oDCOCX_Exontrol1:Columns:Add("Items")
IColumn{oDCOCX_Exontrol1:Columns:Add("Sort")}:Visible := false
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Item 1 (3)"),1] := 3
	var_Items:[CellCaption,var_Items:AddItem("Item 2 (1)"),1] := 1
	var_Items:[CellCaption,var_Items:AddItem("Item 3 (2)"),1] := 2
oDCOCX_Exontrol1:EndUpdate()

571
I want to be able to click on one of the headers, and sort by other column. How can I do that (method 1)

METHOD OCX_Exontrol1ColumnClick(Column) CLASS MainDialog
	// ColumnClick event - Fired after the user clicks on column's header.
	// Column.SortOrder = 1
	oDCOCX_Exontrol1:Items:SortChildren(0,"Sort",true)
RETURN NIL

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:MarkSearchColumn := false
oDCOCX_Exontrol1:SortOnClick := exUserSort
oDCOCX_Exontrol1:Columns:Add("Items")
IColumn{oDCOCX_Exontrol1:Columns:Add("Sort")}:Visible := false
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Item 1 (3)"),1] := 3
	var_Items:[CellCaption,var_Items:AddItem("Item 2 (1)"),1] := 1
	var_Items:[CellCaption,var_Items:AddItem("Item 3 (2)"),1] := 2
oDCOCX_Exontrol1:EndUpdate()

570
I have a 3 level hierarchy in the treeview, and I want to create a filter that only shows the items in the 2nd level of the hierarchy, is this possible

local var_Column as IColumn
local var_Items as IItems
local h,hChild,hSubChild as USUAL

oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:MarkSearchColumn := false
oDCOCX_Exontrol1:Columns:Add("Items")
IColumn{oDCOCX_Exontrol1:Columns:Add("Level")}:Visible := false
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Parent")
	var_Items:[CellCaption,h,1] := 0
	hChild := var_Items:InsertItem(h,nil,"Child 1.1")
	var_Items:[CellCaption,hChild,1] := 1
	hSubChild := var_Items:InsertItem(hChild,nil,"SubChild A")
	var_Items:[CellCaption,hSubChild,1] := 2
	hChild := var_Items:InsertItem(h,nil,"Child 1.2")
	var_Items:[CellCaption,hChild,1] := 1
	hSubChild := var_Items:InsertItem(hChild,nil,"SubChild B")
	var_Items:[CellCaption,hSubChild,1] := 2
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:FilterInclude := exMatchingItemsOnly
var_Column := oDCOCX_Exontrol1:Columns:[Item,"Level"]
	var_Column:FilterType := exFilter
	var_Column:Filter := AsString(2)
oDCOCX_Exontrol1:ApplyFilter()

569
How can I sort by two-columns, one by date and one by time

local var_Column as IColumn
local var_Columns as IColumns
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:SingleSort := false
var_Columns := oDCOCX_Exontrol1:Columns
	IColumn{var_Columns:Add("Index")}:FormatColumn := "1 index ``"
	IColumn{var_Columns:Add("Date")}:SortType := SortDate
	var_Column := IColumn{var_Columns:Add("Time")}
		var_Column:SortType := SortTime
		var_Column:FormatColumn := "time(value)"
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem(0)
	var_Items:[CellCaption,h,1] := SToD("20010101")
	var_Items:[CellCaption,h,2] := SToD("20010101 10:00:00")
	h := var_Items:AddItem(0)
	var_Items:[CellCaption,h,1] := SToD("20001231")
	var_Items:[CellCaption,h,2] := SToD("20010101 10:00:00")
	h := var_Items:AddItem(0)
	var_Items:[CellCaption,h,1] := SToD("20010101")
	var_Items:[CellCaption,h,2] := SToD("20010101 06:00:00")
	h := var_Items:AddItem(0)
	var_Items:[CellCaption,h,1] := SToD("20001231")
	var_Items:[CellCaption,h,2] := SToD("20010101 08:00:00")
	h := var_Items:AddItem(0)
	var_Items:[CellCaption,h,1] := SToD("20010101")
	var_Items:[CellCaption,h,2] := SToD("20010101 08:00:00")
	h := var_Items:AddItem(0)
	var_Items:[CellCaption,h,1] := SToD("20001231")
	var_Items:[CellCaption,h,2] := SToD("20010101 06:00:00")
oDCOCX_Exontrol1:Layout := "multiplesort=" + CHR(34) + "C1:1 C2:1" + CHR(34) + ""
oDCOCX_Exontrol1:EndUpdate()

568
We are using custom buttons for the +/- on the treeview control, is there a way to control the size of the image

local var_Appearance as IAppearance
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(3,"gBFLBCJwBAEHhEJAAChABDEMACAADACAxRDQNABQKAAzQFAYbBkGqGAAGIYxYgmFgAQhFcZQSKUOQTDKMIziaQIRg8JYlDTJcIjKKEVQHFiXIrAKKwEgmEQMQiCcbzXIUBxAAqVZZFUaKAi+Qg4TLBAzUSAAYhtHqeJBjID4JA6UJXRpIAIQSSBUjGOg6TiMUYZAguAxCEzZUT0fAYUQSCC3ZzDCKoRpiCT7Xg8V5OVbjUz9P7AMBwLA7erxap6PJeD54QymGp/R5eMhyLI8UxXFqRY6veKtJhGDIrT5CEIQVA9EyXJqnahqOiaCguPorQy/dYYdg2BYBPS6MAvG4bVrOd59XrgN42fY2ByzAqlMQwS7rOqiY6YWTnehWToHE+JZUmoLB5CufQuAkBYkGO+ZrDWAo7keZZyHmH5+i8X4bluaJyHgGB9mQHx3JjBpViqJRHmueZ7H8Xo3i2fYAl+d5tncMRfDcdZeDMDIjCCJwokoEoQiEJ4KCIfIdgUSZIAWaoGCEUh2BIJ4gnKBgMDICAnHoCggg0Aw4k0KAJkIagaguYwIj4LAmiKEw2CUIIiHMUJSDQSYyGCFYMGQCJCD0JRjiMRg3gmTYjGSVgmgkchSD4JJklIRIXCSSQYj4U4UgkQhGE+EwJEkJJWhGpgGGIOBNmMdhPg8SRiHCGAlibNhohqJpJi4T4ZA2WYIgEYInGOGJlDkCQyECDoTEkKQ+E+C5oCIVhQCUCQpnSDoeg4SZZH8YdhjibQ7AiUgkgcJFyiyEYmGmOhqhyJ5pmILoYCKaRSB6Eg7CcZgZggaRqHqNoTiuDpKkKMormsQ4xiUYgYiKEo6CCWgWiqPovloZoGjoKQYiQBCAg==")
	var_Appearance:Add(4,"gBFLBCJwBAEHhEJAAChABDcMACAADACAxRDQNABQKAAzQFAYbBkGqGAAGIYxYgmFgAQhFcZQSKUOQTDKMIziaQIRg8JYlDTJcIjKKEVQHFiXIrAKKwEgmEQMQiCcbzXIUBxAAqVZZFUaKAi+Qg4TLBAzUSAAYhtHqeJBjID4JA6UJXRpIAIQSSBUjGOg6TiMUYZAguAxCEzZUT0fAYUQSCC3ZzDCKoRpiCT7Xg8V5OVbjUz9P7AMBwLA7erxap6PJeD54QymGp/R5eMhyLI8UxXFqRY6veKtJhGDIrT5CEIQVA9EyXJqnahqOiaCguPorQy/dYYdg2BYBPS6MAvG4bVrOd59XrgN42fY2ByzAqlMQwS7rOqiY6YWTnehWToHE+JZUmoLB5CufQuAkBYkGO+ZrDWAo7keZZyHmPQ+g8X4fluYBhneEB9l0Iwpg6RRWiqFQfg+V5nnefh/GAB5yAIfRMFeRZdHeDJDCiSApkoMoEiQKBJmKCIfCcYQiHIFYFkmeBaBOA5JmgMIhgITICAmXoBkgIxAk4MxKAIcIaD+YpIjYLoLmMCI2CkJoiGMNgiCCIhDFCUg0EmMhghWDBkAkBg9CUY4jEYN4JA2IxklYJoJHIUg+CSZJSESFwkmUKRSFOFRlCIUIRhOZJCFISQ1iQdgEgGGJOBMeJdhOY5SFiHAmAkaYmG6GwmhmLhthsJJ5hSXYYkgFgKHgOYOFOEITCQCJpDSEoTmgQhUhOIRoHoGoCh+SJpnCZIeBedgaHgO4OlOMINCISByECDQikkGhuh2JwpmqBogCKaYiC6FwhmkQ4yHgYYYgaFopiuaRakCbIsisSpGjYOwaFYIYKCkK5CA2IRqiwCwFiYaBrkKEYKEAQCAgA==")
	var_Appearance:Add(1,"CP:3 -4 -4 4 4")
	var_Appearance:Add(2,"CP:4 -4 -4 4 4")
oDCOCX_Exontrol1:DefaultItemHeight := 22
oDCOCX_Exontrol1:LinesAtRoot := exGroupLinesAtRoot
oDCOCX_Exontrol1:HasButtons := exCustom
oDCOCX_Exontrol1:[HasButtonsCustom,false] := 16777216
oDCOCX_Exontrol1:[HasButtonsCustom,true] := 33554432
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root 1")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Root 2")
	var_Items:InsertItem(h,nil,"Child")
oDCOCX_Exontrol1:EndUpdate()

567
How can I connect to a DBF file
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:ContinueColumnScroll := false
oDCOCX_Exontrol1:MarkSearchColumn := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADODB.Recordset"}
	rs:Open("Select * From foxcode.DBF","Provider=vfpoledb;Data Source=C:\Program Files\Microsoft Visual FoxPro 9\",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:EndUpdate()

566
Do you have any Fit-To-Page options when printing the control

local var_Print as IExPrint
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:EndUpdate()
// Generate Source for 'ExPrint 1.0 Control Library(ExPrint.dll)' server from Tools\Automation Server...
var_Print := IExPrint{"Exontrol.Print"}
	var_Print:Options := "FitToPage = On"
	var_Print:PrintExt := oDCOCX_Exontrol1
	var_Print:Preview()

565
Does your control supports scrolling by touching the screen

local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:AutoDrag := exAutoDragScrollOnShortTouch | exAutoDragScroll
oDCOCX_Exontrol1:ScrollBySingleLine := true
oDCOCX_Exontrol1:ContinueColumnScroll := true
oDCOCX_Exontrol1:EndUpdate()

564
How do I prevent showing the control's BackColorAlternate property on empty / non-items part of the control

local var_Items as IItems

oDCOCX_Exontrol1:BackColorAlternate := 0x7ff0f0f0
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item 1")
	var_Items:AddItem("Item 2")
	var_Items:AddItem("Item 3")
	var_Items:AddItem("Item 4")
	var_Items:AddItem("Item 5")

563
Is there a syntax for conditional formatting of items, based on CellState/CellStateChange

METHOD OCX_Exontrol1CellStateChanged(Item,ColIndex) CLASS MainDialog
	// CellStateChanged event - Fired after cell's state has been changed.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:[CellCaption,Item,2] := var_Items:[CellState,Item,0]
RETURN NIL

local var_Column as IColumn
local var_ConditionalFormat as IConditionalFormat
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ShowFocusRect := false
oDCOCX_Exontrol1:MarkSearchColumn := false
oDCOCX_Exontrol1:SelBackMode := exTransparent
var_ConditionalFormat := oDCOCX_Exontrol1:ConditionalFormats:Add("%2 != 0",nil)
	var_ConditionalFormat:Bold := true
	var_ConditionalFormat:ForeColor := RGB(255,0,0)
	var_ConditionalFormat:ApplyTo := exFormatToItems
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:Width := 16
	var_Column:AllowSizing := false
oDCOCX_Exontrol1:Columns:Add("Information")
IColumn{oDCOCX_Exontrol1:Columns:Add("Hidden")}:Visible := false
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem(""),1] := "This is a bit of text associated"
	h := var_Items:AddItem("")
	var_Items:[CellCaption,h,1] := "This is a bit of text associated"
	var_Items:[CellState,h,0] := 1
	var_Items:[CellCaption,var_Items:AddItem(""),1] := "This is a bit of text associated"
oDCOCX_Exontrol1:EndUpdate()

562
How can I start editing the cell as soon as the user clicks a cell

METHOD OCX_Exontrol1AfterCellEdit(Item,ColIndex,NewCaption) CLASS MainDialog
	// AfterCellEdit event - Occurs after data in the current cell is edited.
	oDCOCX_Exontrol1:Items:[CellCaption,Item,ColIndex] := NewCaption
RETURN NIL

METHOD OCX_Exontrol1CancelCellEdit(Item,ColIndex,Reserved) CLASS MainDialog
	// CancelCellEdit event - Occurs if the edit operation is canceled.
	oDCOCX_Exontrol1:Items:[CellCaption,Item,ColIndex] := Reserved
RETURN NIL

METHOD OCX_Exontrol1Click() CLASS MainDialog
	// Click event - Occurs when the user presses and then releases the left mouse button over the tree control.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:Edit(var_Items:FocusItem,0)
RETURN NIL


oDCOCX_Exontrol1:AllowEdit := true
oDCOCX_Exontrol1:Columns:Add("Column")
oDCOCX_Exontrol1:Items:AddItem("Item 1")
oDCOCX_Exontrol1:Items:AddItem("Item 2")
oDCOCX_Exontrol1:Items:AddItem("")

561
How do I programmatically exclude items from the filter

local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Items")}
	var_Column:DisplayFilterButton := true
	var_Column:DisplayFilterPattern := false
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item 1")
	var_Items:AddItem("Item 2")
	var_Items:AddItem("Item 3")
	var_Items:AddItem("Item 4")
var_Column1 := oDCOCX_Exontrol1:Columns:[Item,0]
	var_Column1:FilterType := exFilterExclude | exFilter
	var_Column1:Filter := "Item 1|Item 4"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

560
How can I sort the columns to be displayed on the columns floating bar

local var_Columns as IColumns

oDCOCX_Exontrol1:ColumnAutoResize := false
var_Columns := oDCOCX_Exontrol1:Columns
	IColumn{var_Columns:Add("City")}:Visible := false
	IColumn{var_Columns:Add("Start")}:Visible := false
	IColumn{var_Columns:Add("End")}:Visible := false
oDCOCX_Exontrol1:ColumnsFloatBarVisible := exColumnsFloatBarVisibleIncludeHiddenColumns
oDCOCX_Exontrol1:ColumnsFloatBarSortOrder := SortAscending

559
How can I add a vertical padding

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:DrawGridLines := exAllLines
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Padding")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:[Def,exCellSingleLine] := false
	var_Column:[Def,exCellPaddingLeft] := 6
	var_Column:[Def,exCellPaddingRight] := 6
	var_Column:[Def,exCellPaddingTop] := 6
	var_Column:[Def,exCellPaddingBottom] := 6
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("padding")
	var_Items:AddItem("padding")
oDCOCX_Exontrol1:EndUpdate()

558
Is the PutItems method running .AddItem event

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	OutputDebugString(String2Psz( "Adding ..." ))
	OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:Items:[CellCaption,Item,0]) ))
RETURN NIL

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:Columns:Add("Def")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
OutputDebugString(String2Psz( "Call PutItems" ))
oDCOCX_Exontrol1:PutItems(oDCOCX_Exontrol1:GetItems(-1),nil)

557
How do you embed HTML options into the anchor click string

METHOD OCX_Exontrol1AnchorClick(AnchorID,Options) CLASS MainDialog
	// AnchorClick event - Occurs when an anchor element is clicked.
	OutputDebugString(String2Psz( AsString(AnchorID) ))
	OutputDebugString(String2Psz( AsString(Options) ))
RETURN NIL

local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Columns := oDCOCX_Exontrol1:Columns
	IColumn{var_Columns:Add("Car")}:[Def,exCellCaptionFormat] := 1
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("<a mazda_1;options for 1>Mazda <b>1</b></a>")
	var_Items:AddItem("<a mazda_2;options for 2>Mazda <b>2</b></a>")
	var_Items:AddItem("<a mazda_3;options for 3a>Mazda <b>3.a</b></a>")
	var_Items:AddItem("<a mazda_3;options for 3b>Mazda <b>3.b</b></a>")
oDCOCX_Exontrol1:EndUpdate()

556
I have the rows with different background color, and when I select the item it takes the color of the SelBackColor, and therefore is no longer visible behind the color. Is there any option to make the item's color being visible (method 3)

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:VisualAppearance:Add(1,"gBFLBCJwBAEHhEJAEGg4BVEIQAAYAQGKIYBkAKBQAGaAoDDMOQwQwAAxjGKEEwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQCWIAzATGYBRfIUEgjBM6ExwG78egBHp/ZpkACIJJAaRjHQdJxGKKMQB9DIhCZpeKhWgkKIJBzOEyBRC4ERBGqNGrsIgLEqWZpnWhaNpWXYTLyBN64LhuK46g53O6wLxvK6hEr2dJ/YBcIAOfghf4NQ7EMRxLC8Mw3BDvYDkOAABAIgI=")
oDCOCX_Exontrol1:SelBackColor := 0x1fffffe
oDCOCX_Exontrol1:ShowFocusRect := false
oDCOCX_Exontrol1:Columns:Add("Items")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[ItemBackColor,var_Items:AddItem("red")] := RGB(255,0,0)
	var_Items:[ItemBackColor,var_Items:AddItem("blue")] := RGB(0,0,255)
	var_Items:[ItemBackColor,var_Items:AddItem("green")] := RGB(0,255,0)
oDCOCX_Exontrol1:EndUpdate()

555
I have the rows with different background color, and when I select the item it takes the color of the SelBackColor, and therefore is no longer visible behind the color. Is there any option to make the item's color being visible (method 2)

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:SelBackMode := exTransparent
oDCOCX_Exontrol1:ShowFocusRect := false
oDCOCX_Exontrol1:Columns:Add("Items")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[ItemBackColor,var_Items:AddItem("red")] := RGB(255,0,0)
	var_Items:[ItemBackColor,var_Items:AddItem("blue")] := RGB(0,0,255)
	var_Items:[ItemBackColor,var_Items:AddItem("green")] := RGB(0,255,0)
oDCOCX_Exontrol1:EndUpdate()

554
I have the rows with different background color, and when I select the item it takes the color of the SelBackColor, and therefore is no longer visible behind the color. Is there any option to make the item's color being visible (method 1)

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:SelBackColor := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:SelForeColor := oDCOCX_Exontrol1:ForeColor
oDCOCX_Exontrol1:ShowFocusRect := true
oDCOCX_Exontrol1:Columns:Add("Items")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[ItemBackColor,var_Items:AddItem("red")] := RGB(255,0,0)
	var_Items:[ItemBackColor,var_Items:AddItem("blue")] := RGB(0,0,255)
	var_Items:[ItemBackColor,var_Items:AddItem("green")] := RGB(0,255,0)
oDCOCX_Exontrol1:EndUpdate()

553
How do I arrange my columns on multiple levels

local var_Column,var_Column1,var_Column2 as IColumn
local var_Columns as IColumns

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:DrawGridLines := exAllLines
var_Columns := oDCOCX_Exontrol1:Columns
	var_Column := IColumn{var_Columns:Add("C0")}
		var_Column:ExpandColumns := "1,2"
		var_Column:DisplayExpandButton := false
	var_Columns:Add("C1")
	var_Columns:Add("C2")
	var_Columns:Add("C3")
	var_Column1 := IColumn{var_Columns:Add("C4")}
		var_Column1:ExpandColumns := "5,6"
		var_Column1:DisplayExpandButton := false
	var_Columns:Add("C5")
	var_Column2 := IColumn{var_Columns:Add("C6")}
		var_Column2:ExpandColumns := "6,7"
		var_Column2:DisplayExpandButton := false
	var_Columns:Add("C7")
oDCOCX_Exontrol1:EndUpdate()

552
Does your control support expandable header or columns, so I can arrange it on multiple levels

local var_Column,var_Column1 as IColumn
local var_Columns as IColumns

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:DrawGridLines := exAllLines
oDCOCX_Exontrol1:BackColorLevelHeader := RGB(240,240,240)
var_Columns := oDCOCX_Exontrol1:Columns
	var_Column := IColumn{var_Columns:Add("Photo")}
		var_Column:AllowSizing := false
		var_Column:Width := 32
	var_Columns:Add("Personal Info")
	var_Columns:Add("Title")
	var_Columns:Add("Name")
	var_Columns:Add("First")
	var_Columns:Add("Last")
	var_Columns:Add("Address")
	var_Columns:[Item,"Personal Info"]:ExpandColumns := "2,3"
	var_Column1 := var_Columns:[Item,"Name"]
		var_Column1:ExpandColumns := "4,5"
		var_Column1:Expanded := false
oDCOCX_Exontrol1:EndUpdate()

551
Does your control support subscript or superscript, in HTML captions

local var_Column,var_Column1,var_Column2 as IColumn
local var_Columns as IColumns
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:HeaderHeight := 28
oDCOCX_Exontrol1:DefaultItemHeight := 24
var_Columns := oDCOCX_Exontrol1:Columns
	var_Column := IColumn{var_Columns:Add("Column 1")}
		var_Column:HTMLCaption := "Column <b><off 2><font ;6>1"
		var_Column:[Def,exCellCaptionFormat] := 1
	var_Column1 := IColumn{var_Columns:Add("Column 2")}
		var_Column1:HTMLCaption := "Column <b><off 2><font ;6>2"
		var_Column1:[Def,exCellCaptionFormat] := 1
	var_Column2 := IColumn{var_Columns:Add("Column 3")}
		var_Column2:HTMLCaption := "Column <b><off 2><font ;6>3"
		var_Column2:[Def,exCellCaptionFormat] := 1
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Item <font ;6><off 4>1")
	var_Items:[CellCaption,h,1] := "Item <font ;6><off -6>2"
	var_Items:[CellCaption,h,2] := "Item <b><font ;6><off -6>2<off 4>3<off 4>1"

550
Is there any property I can save and restore automatically the current setting, column position, size, and so on (2)

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item 1")
	var_Items:AddItem("Item 2")
	var_Items:AddItem("Item 3")
oDCOCX_Exontrol1:Layout := "Select=" + CHR(34) + "0" + CHR(34) + ";SingleSort=" + CHR(34) + "C0:2" + CHR(34) + ";Columns=1"
oDCOCX_Exontrol1:EndUpdate()

549
Is there any property I can save and restore automatically the current setting, column position, size, and so on (1)

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item 1")
	var_Items:AddItem("Item 2")
	var_Items:AddItem("Item 3")
oDCOCX_Exontrol1:Layout := "gBjAAwAAuABmABpABsAB0ABlAByhoAPIAOEPAA9gYABoABQAgUEg0XN4AOcJicKkpujMbjsfkMFk0YhkQgUOjUEl8gjcGO0ok8KMULjEaGMcj08kQAO8oMkTNEtGwAGQAqc7gUlhh1ABtAEsk9GpEfhElgVcsMupNlnlonlaAFcr0shUsp8QPEtnVJqJhmcIhUMh0QiU5sYAqMngUSuEMw07k8Qv0SgVRrNEuVflF2jF5x9JyNEm0TjQijemyE0jE3t+YruauoAu4Az1qj9BzRn0UzksSnAA0xDjY6qnAw8OiUQ0dwzN0zWz2t7j8/xURAGNvWH6k8xlEhklhEI0O/6QAgI="
oDCOCX_Exontrol1:EndUpdate()

548
I have noticed that the column's header is changed once the cursor hovers it. Is it possible to change that visual appearance

local var_Columns as IColumns

oDCOCX_Exontrol1:VisualAppearance:Add(1,"c:\exontrol\images\normal.ebn")
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Column 1")
	var_Columns:Add("Column 2")
oDCOCX_Exontrol1:BackColorHeader := 0x1000000
oDCOCX_Exontrol1:[Background,exCursorHoverColumn] := 0x12d86ff

547
Is it possible to change the visual appearance of the columns selector/floating bar(3)

local var_Columns as IColumns

oDCOCX_Exontrol1:ColumnAutoResize := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Column 1")
	IColumn{var_Columns:Add("Column 2")}:Visible := false
oDCOCX_Exontrol1:VisualAppearance:Add(2,"c:\exontrol\images\normal.ebn")
oDCOCX_Exontrol1:VisualAppearance:Add(3,"c:\exontrol\images\pushed.ebn")
oDCOCX_Exontrol1:[Background,exColumnsFloatAppearance] := 0x2000000
oDCOCX_Exontrol1:[Background,exColumnsFloatBackColor] := 0x3000000
oDCOCX_Exontrol1:[Background,exColumnsFloatCaptionBackColor] := RGB(246,245,240)
oDCOCX_Exontrol1:ColumnsFloatBarVisible := exColumnsFloatBarVisibleIncludeHiddenColumns

546
Is it possible to change the visual appearance of the columns selector/floating bar(2)

local var_Columns as IColumns

oDCOCX_Exontrol1:ColumnAutoResize := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Column 1")
	IColumn{var_Columns:Add("Column 2")}:Visible := false
oDCOCX_Exontrol1:VisualAppearance:Add(3,"c:\exontrol\images\pushed.ebn")
oDCOCX_Exontrol1:[Background,exColumnsFloatBackColor] := 0x3000000
oDCOCX_Exontrol1:ColumnsFloatBarVisible := exColumnsFloatBarVisibleIncludeHiddenColumns

545
Is it possible to change the visual appearance of the columns selector/floating bar(1)


oDCOCX_Exontrol1:VisualAppearance:Add(2,"c:\exontrol\images\normal.ebn")
oDCOCX_Exontrol1:[Background,exColumnsFloatAppearance] := 0x2000000
oDCOCX_Exontrol1:[Background,exColumnsFloatBackColor] := RGB(246,245,240)
oDCOCX_Exontrol1:[Background,exColumnsFloatCaptionBackColor] := RGB(246,245,240)
oDCOCX_Exontrol1:ColumnsFloatBarVisible := exColumnsFloatBarVisibleIncludeHiddenColumns

544
I am using the ColumnsFloatBarVisible property on True, but still not able to add any column on that list

local var_Columns as IColumns

oDCOCX_Exontrol1:ColumnAutoResize := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Column 1")
	IColumn{var_Columns:Add("Column 2")}:Visible := false
oDCOCX_Exontrol1:ColumnsFloatBarVisible := exColumnsFloatBarVisibleIncludeHiddenColumns

543
Is it possible to list a column to columns selector/floating bar, but still user can use it

local var_Column as IColumn
local var_Columns as IColumns

oDCOCX_Exontrol1:ColumnAutoResize := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Column 1")
	IColumn{var_Columns:Add("Column 2")}:Visible := false
	var_Column := IColumn{var_Columns:Add("Column 3")}
		var_Column:Visible := false
		var_Column:Enabled := false
oDCOCX_Exontrol1:ColumnsFloatBarVisible := exColumnsFloatBarVisibleIncludeHiddenColumns

542
How can I prevent a specific column not to be listed in the columns selector/floating bar

local var_Column as IColumn
local var_Columns as IColumns

oDCOCX_Exontrol1:ColumnAutoResize := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Column 1")
	IColumn{var_Columns:Add("Column 2")}:Visible := false
	var_Column := IColumn{var_Columns:Add("Column 3")}
		var_Column:Visible := false
		var_Column:AllowDragging := false
oDCOCX_Exontrol1:ColumnsFloatBarVisible := exColumnsFloatBarVisibleIncludeHiddenColumns

541
Is it possible to change the "Columns" caption being shown in the columns selector/floating bar

local var_Columns as IColumns

oDCOCX_Exontrol1:ColumnAutoResize := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Column 1")
	IColumn{var_Columns:Add("Column 2")}:Visible := false
oDCOCX_Exontrol1:[Description,exColumnsFloatBar] := "Hidden Columns"
oDCOCX_Exontrol1:ColumnsFloatBarVisible := exColumnsFloatBarVisibleIncludeHiddenColumns

540
How can I show the columns selector, so the user can drag and drop columns to the view

local var_Columns as IColumns

oDCOCX_Exontrol1:ColumnAutoResize := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Column 1")
	IColumn{var_Columns:Add("Column 2")}:Visible := false
oDCOCX_Exontrol1:ColumnsFloatBarVisible := exColumnsFloatBarVisibleIncludeHiddenColumns

539
The column's header is changed while the cursor hovers it. Is it possible to prevent that

local var_Columns as IColumns

var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Column 1")
	var_Columns:Add("Column 2")
oDCOCX_Exontrol1:[Background,exCursorHoverColumn] := -1

538
Is there any public method to export the selected data

local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:MarkSearchColumn := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("C1")
	IColumn{var_Columns:Add("C2")}:FormatColumn := "1 index `A-Z`"
	IColumn{var_Columns:Add("C3")}:FormatColumn := "100 index ``"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Item 1")
	var_Items:[SelectItem,var_Items:AddItem("Item 2")] := true
	var_Items:AddItem("Item 3")
oDCOCX_Exontrol1:EndUpdate()
OutputDebugString(String2Psz( "Export CSV Selected Items Only:" ))
OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:Export("","sel")) ))

537
Is it possible to auto-numbering the children items but still keeps the position after filtering

local var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5,var_Column6 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Items")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterType := exFilter
	var_Column:Filter := "Child 2"
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos.1")}
	var_Column1:FormatColumn := "1 ropos ''"
	var_Column1:Position := 0
	var_Column1:Width := 32
	var_Column1:AllowSizing := false
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos.2")}
	var_Column2:FormatColumn := "1 ropos ':'"
	var_Column2:Position := 1
	var_Column2:Width := 32
	var_Column2:AllowSizing := false
var_Column3 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos.3")}
	var_Column3:FormatColumn := "1 ropos ':|A-Z'"
	var_Column3:Position := 2
	var_Column3:Width := 32
	var_Column3:AllowSizing := false
var_Column4 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos.4")}
	var_Column4:FormatColumn := "1 ropos '|A-Z|'"
	var_Column4:Position := 3
	var_Column4:Width := 32
	var_Column4:AllowSizing := false
var_Column5 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos.5")}
	var_Column5:FormatColumn := "'<font Tahoma;7>' + 1 ropos '-<b>||A-Z'"
	var_Column5:[Def,exCellCaptionFormat] := 1
	var_Column5:Position := 4
	var_Column5:Width := 32
	var_Column5:AllowSizing := false
var_Column6 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos.6")}
	var_Column6:FormatColumn := "'<b>'+ 1 ropos '</b>:<fgcolor=FF0000>|A-Z|'"
	var_Column6:[Def,exCellCaptionFormat] := 1
	var_Column6:Position := 5
	var_Column6:Width := 48
	var_Column6:AllowSizing := false
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root 1")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Root 2")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

536
Is it possible to auto-numbering the children items too

local var_Column,var_Column1,var_Column2,var_Column3,var_Column4,var_Column5 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:Columns:Add("Items")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos.1")}
	var_Column:FormatColumn := "1 rpos ''"
	var_Column:Position := 0
	var_Column:Width := 32
	var_Column:AllowSizing := false
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos.2")}
	var_Column1:FormatColumn := "1 rpos ':'"
	var_Column1:Position := 1
	var_Column1:Width := 32
	var_Column1:AllowSizing := false
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos.3")}
	var_Column2:FormatColumn := "1 rpos ':|A-Z'"
	var_Column2:Position := 2
	var_Column2:Width := 32
	var_Column2:AllowSizing := false
var_Column3 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos.4")}
	var_Column3:FormatColumn := "1 rpos '|A-Z|'"
	var_Column3:Position := 3
	var_Column3:Width := 32
	var_Column3:AllowSizing := false
var_Column4 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos.5")}
	var_Column4:FormatColumn := "'<font Tahoma;7>' + 1 rpos '-<b>||A-Z'"
	var_Column4:[Def,exCellCaptionFormat] := 1
	var_Column4:Position := 4
	var_Column4:Width := 32
	var_Column4:AllowSizing := false
var_Column5 := IColumn{oDCOCX_Exontrol1:Columns:Add("Pos.6")}
	var_Column5:FormatColumn := "'<b>'+ 1 rpos '</b>:<fgcolor=FF0000>|A-Z|'"
	var_Column5:[Def,exCellCaptionFormat] := 1
	var_Column5:Position := 5
	var_Column5:Width := 48
	var_Column5:AllowSizing := false
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root 1")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Root 2")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
oDCOCX_Exontrol1:EndUpdate()

535
How can I find if there is any filter applied to the control

METHOD OCX_Exontrol1FilterChange() CLASS MainDialog
	// FilterChange event - Notifies your application that the filter is changed.
	OutputDebugString(String2Psz( "If negative, the filter is present, else not" ))
	OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:Items:VisibleItemCount) ))
RETURN NIL

local var_Column as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:TreeColumnIndex := -1
oDCOCX_Exontrol1:FilterInclude := exMatchingItemsOnly
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Column")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterType := exFilter
	var_Column:Filter := "C1"
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("R1")
	var_Items:InsertItem(h,nil,"C1")
	var_Items:InsertItem(h,nil,"C2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("R2")
	var_Items:InsertItem(h,nil,"C1")
	var_Items:InsertItem(h,nil,"C2")
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

534
How can I prevent showing the lines for the hierarchy while using the exMatchingItemsOnly option

local var_Column as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:TreeColumnIndex := -1
oDCOCX_Exontrol1:FilterInclude := exMatchingItemsOnly
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Column")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterType := exFilter
	var_Column:Filter := "C1|C2"
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("R1")
	var_Items:InsertItem(h,nil,"C1")
	var_Items:InsertItem(h,nil,"C2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("R2")
	var_Items:InsertItem(h,nil,"C1")
	var_Items:InsertItem(h,nil,"C2")
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

533
Is there any method to get only the matched items and not the items with his parent

local var_Column as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:FilterInclude := exMatchingItemsOnly
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Column")}
	var_Column:DisplayFilterButton := true
	var_Column:FilterType := exFilter
	var_Column:Filter := "C1|C2"
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("R1")
	var_Items:InsertItem(h,nil,"C1")
	var_Items:InsertItem(h,nil,"C2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("R2")
	var_Items:InsertItem(h,nil,"C1")
	var_Items:InsertItem(h,nil,"C2")
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

532
How can I add or change the padding (spaces) for captions in the control's header

local var_Column as IColumn

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Padding-Left")}:[Def,exHeaderPaddingLeft] := 18
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Padding-Right")}
	var_Column:[Def,exHeaderPaddingRight] := 18
	var_Column:HeaderAlignment := RightAlignment
oDCOCX_Exontrol1:EndUpdate()

531
Do you have any plans to add cell spacing and cell padding to the cells

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:DrawGridLines := exRowLines
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Padding-Left")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:[Def,exCellPaddingLeft] := 18
IColumn{oDCOCX_Exontrol1:Columns:Add("No-Padding")}:[Def,exCellHasCheckBox] := true
IColumn{oDCOCX_Exontrol1:Columns:Add("Empty")}:Position := 0
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Item A.1"),1] := "Item A.2"
	var_Items:[CellCaption,var_Items:AddItem("Item B.1"),1] := "Item B.2"
	var_Items:[CellCaption,var_Items:AddItem("Item C.1"),1] := "Item C.2"
oDCOCX_Exontrol1:EndUpdate()

530
Is it possible display numbers in the same format no matter of regional settings in the control panel

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Def")}:[Def,exCellCaptionFormat] := 1
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem(100000.27)
	var_Items:[FormatCell,h,0] := "(value format '') +  ' <fgcolor=808080>(default positive)'"
	h := var_Items:AddItem(100000.27)
	var_Items:[FormatCell,h,0] := "(value format '2|.|3|,|1|1')"
	h := var_Items:AddItem(-100000.27)
	var_Items:[FormatCell,h,0] := "(value format '') +  ' <fgcolor=808080>(default negative)'"
	h := var_Items:AddItem(-100000.27)
	var_Items:[FormatCell,h,0] := "(value format '2|.|3|,|1|1')"
oDCOCX_Exontrol1:EndUpdate()

529
Is it possible to add a 0 for numbers less than 1 instead .7 to show 0.8

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Def")}:[Def,exCellCaptionFormat] := 1
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem(0.27)
	var_Items:[FormatCell,h,0] := "(value format '') +  ' <fgcolor=808080>(default)'"
	h := var_Items:AddItem(0.27)
	var_Items:[FormatCell,h,0] := "(value format '|||||0') +  ' <fgcolor=808080>(Display no leading zeros)'"
oDCOCX_Exontrol1:EndUpdate()

528
How can I specify the format for negative numbers

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Def")}:[Def,exCellCaptionFormat] := 1
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem(-100000.27)
	var_Items:[FormatCell,h,0] := "(value format '') +  ' <fgcolor=808080>(default)'"
	h := var_Items:AddItem(-100000.27)
	var_Items:[FormatCell,h,0] := "(value format '||||1') +  ' <fgcolor=808080>(Negative sign, number; for example, -1.1)'"
oDCOCX_Exontrol1:EndUpdate()

527
Is it possible to change the grouping character when display numbers

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Def")}:[Def,exCellCaptionFormat] := 1
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem(100000.27)
	var_Items:[FormatCell,h,0] := "(value format '') +  ' <fgcolor=808080>(default)'"
	h := var_Items:AddItem(100000.27)
	var_Items:[FormatCell,h,0] := "(value format '|||-') +  ' <fgcolor=808080>(grouping character is -)'"
oDCOCX_Exontrol1:EndUpdate()

526
How can I display numbers with 2 digits in each group

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Def")}:[Def,exCellCaptionFormat] := 1
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem(100000.27)
	var_Items:[FormatCell,h,0] := "(value format '') +  ' <fgcolor=808080>(default)'"
	h := var_Items:AddItem(100000.27)
	var_Items:[FormatCell,h,0] := "(value format '||2') +  ' <fgcolor=808080>(grouping by 2 digits)'"
oDCOCX_Exontrol1:EndUpdate()

525
How can I display my numbers using a different decimal separator

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Def")}:[Def,exCellCaptionFormat] := 1
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem(100.27)
	var_Items:[FormatCell,h,0] := "(value format '') +  ' <fgcolor=808080>(default)'"
	h := var_Items:AddItem(100.27)
	var_Items:[FormatCell,h,0] := "(value format '|;') +  ' <fgcolor=808080>(decimal separator is <b>;</b>)'"
oDCOCX_Exontrol1:EndUpdate()

524
Is it possible to display the numbers using 3 (three) digits

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Def")}:[Def,exCellCaptionFormat] := 1
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem(100.27)
	var_Items:[FormatCell,h,0] := "(value format '') +  ' <fgcolor=808080>(default)'"
	h := var_Items:AddItem(100.27)
	var_Items:[FormatCell,h,0] := "(value format '3') +  ' <fgcolor=808080>(3 digits)'"
	h := var_Items:AddItem(100.27)
	var_Items:[FormatCell,h,0] := "(value format 2) +  '  <fgcolor=808080>(2 digits)'"
	h := var_Items:AddItem(100.27)
	var_Items:[FormatCell,h,0] := "(value format 1) +  ' <fgcolor=808080>(1 digit)'"
oDCOCX_Exontrol1:EndUpdate()

523
Is it possible to format numbers

local var_Column,var_Column1,var_Column2,var_Column3 as IColumn
local var_Columns as IColumns
local var_Items as IItems
local h,h1 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:MarkSearchColumn := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Name")
	var_Column := IColumn{var_Columns:Add("A")}
		var_Column:SortType := SortNumeric
		var_Column:AllowSizing := false
		var_Column:Width := 36
		var_Column:FormatColumn := "len(value) ? value + ' +'"
	var_Column1 := IColumn{var_Columns:Add("B")}
		var_Column1:SortType := SortNumeric
		var_Column1:AllowSizing := false
		var_Column1:Width := 36
		var_Column1:FormatColumn := "len(value) ? value + ' +'"
	var_Column2 := IColumn{var_Columns:Add("C")}
		var_Column2:SortType := SortNumeric
		var_Column2:AllowSizing := false
		var_Column2:Width := 36
		var_Column2:FormatColumn := "len(value) ? value + ' ='"
	var_Column3 := IColumn{var_Columns:Add("A+B+C")}
		var_Column3:SortType := SortNumeric
		var_Column3:Width := 64
		var_Column3:ComputedField := "dbl(%1)+dbl(%2)+dbl(%3)"
		var_Column3:FormatColumn := "type(value) in (0,1) ? 'null' : ( dbl(value)<0 ? '<fgcolor=FF0000>'+ (value format '2|.|3|,|1' ) : (dbl(value)>0 ? '<fgcolor=0000FF>+'+(value format '2|.|3|,' ): '0.00') )"
		var_Column3:[Def,exCellCaptionFormat] := 1
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root")
	var_Items:[CellCaptionFormat,h,4] := exComputedField
	h1 := var_Items:InsertItem(h,nil,"Child 1")
	var_Items:[CellCaption,h1,1] := 7
	var_Items:[CellCaption,h1,2] := 3
	var_Items:[CellCaption,h1,3] := 1
	h1 := var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[CellCaption,h1,1] := -2
	var_Items:[CellCaption,h1,2] := -2
	var_Items:[CellCaption,h1,3] := -4
	h1 := var_Items:InsertItem(h,nil,"Child 3")
	var_Items:[CellCaption,h1,1] := 2
	var_Items:[CellCaption,h1,2] := 2
	var_Items:[CellCaption,h1,3] := -4
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:EndUpdate()

522
I am using the FormatColumn/FormatCell to format my columns. Is it possible to ignore the SelForeColor, so the foreground color for selected items does not override my settings

METHOD OCX_Exontrol1SelectionChanged() CLASS MainDialog
	// SelectionChanged event - Fired after a new item has been selected.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:ClearItemBackColor(0)
		var_Items:[ItemBackColor,var_Items:[SelectedItem,0]] := RGB(128,255,255)
RETURN NIL

local var_Column as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:MarkSearchColumn := false
oDCOCX_Exontrol1:SelForeColor := oDCOCX_Exontrol1:ForeColor
oDCOCX_Exontrol1:SelBackColor := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:ShowFocusRect := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Column := IColumn{var_Columns:Add("Format")}
		var_Column:FormatColumn := "type(value) in (0,1) ? 'null' : ( dbl(value)<0 ? '<fgcolor=FF0000>'+ (value format '2|.|3|,|1' ) : (dbl(value)>0 ? '<fgcolor=0000FF>+'+(value format '2|.|3|,' ): '0.00') )"
		var_Column:[Def,exCellCaptionFormat] := 1
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem(10)
	var_Items:AddItem(-8)
oDCOCX_Exontrol1:EndUpdate()

521
Is it possible to change the height for all items at once

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:Columns:Add("Items")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root 1")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	h := var_Items:AddItem("Root 2")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,0] := true
oDCOCX_Exontrol1:EndUpdate()
oDCOCX_Exontrol1:DefaultItemHeight := 12
oDCOCX_Exontrol1:Items:[ItemHeight,0] := 12

520
How can I add a footer row

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:ShowLockedItems := true
oDCOCX_Exontrol1:DrawGridLines := exVLines
oDCOCX_Exontrol1:Columns:Add("C1")
oDCOCX_Exontrol1:Columns:Add("C2")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[LockedItemCount,BottomAlignment] := 1
	h := var_Items:[LockedItem,BottomAlignment,0]
	var_Items:[ItemBackColor,h] := RGB(128,128,128)
	var_Items:[ItemForeColor,h] := RGB(255,255,255)
	var_Items:[CellCaption,h,0] := "footer c1"
	var_Items:[CellCaption,h,1] := "footer c2"
	var_Items:[CellCaption,var_Items:AddItem("cell"),1] := "cell"

519
How can I add a header row

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:ShowLockedItems := true
oDCOCX_Exontrol1:DrawGridLines := exVLines
oDCOCX_Exontrol1:Columns:Add("C1")
oDCOCX_Exontrol1:Columns:Add("C2")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[LockedItemCount,TopAlignment] := 1
	h := var_Items:[LockedItem,TopAlignment,0]
	var_Items:[ItemBackColor,h] := RGB(128,128,128)
	var_Items:[ItemForeColor,h] := RGB(255,255,255)
	var_Items:[CellCaption,h,0] := "footer c1"
	var_Items:[CellCaption,h,1] := "footer c2"
	var_Items:[CellCaption,var_Items:AddItem("cell"),1] := "cell"

518
When I'm trying to show string with "line break" character (vbCrLF) in a textbox, it shows 2 squares. Is there any way to hide these squares

local var_Column,var_Column1,var_Column2 as IColumn
local var_Columns as IColumns
local var_Items as IItems

var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Value")
	var_Column := IColumn{var_Columns:Add("CellSingleLine = False")}
		var_Column:ComputedField := "%0"
		var_Column:[Def,exCellSingleLine] := false
	var_Column1 := IColumn{var_Columns:Add("FormatColumn/replace CRLF")}
		var_Column1:ComputedField := "%0"
		var_Column1:FormatColumn := "value replace `\r\n` with ``"
	var_Column2 := IColumn{var_Columns:Add("FormatColumn/replace TAB,CRLF")}
		var_Column2:ComputedField := "%0"
		var_Column2:FormatColumn := "(value replace `\t` with ``) replace `\r\n` with ``"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("a\ta\r\nb\tb")

517
Is there any way to "unselect" radio group

METHOD OCX_Exontrol1DblClick(Shift,X,Y) CLASS MainDialog
	// DblClick event - Occurs when the user dblclk the left mouse button over an object.
	local var_Items as IItems
	local h as USUAL
	var_Items := oDCOCX_Exontrol1:Items
		h := var_Items:[CellChecked,1234]
		var_Items:[CellHasCheckBox,0,h] := true
		var_Items:[CellState,0,h] := 0
		var_Items:[CellHasCheckBox,0,h] := false
RETURN NIL

METHOD OCX_Exontrol1SelectionChanged() CLASS MainDialog
	// SelectionChanged event - Fired after a new item has been selected.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:[CellState,var_Items:FocusItem,0] := 1
RETURN NIL

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:MarkSearchColumn := false
oDCOCX_Exontrol1:SelBackColor := RGB(255,255,128)
oDCOCX_Exontrol1:SelForeColor := RGB(0,0,0)
oDCOCX_Exontrol1:Columns:Add("Default")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Radio 1")
	var_Items:[CellHasRadioButton,h,0] := true
	var_Items:[CellRadioGroup,h,0] := 1234
	h := var_Items:AddItem("Radio 2")
	var_Items:[CellHasRadioButton,h,0] := true
	var_Items:[CellRadioGroup,h,0] := 1234
	var_Items:[CellState,h,0] := 1
	h := var_Items:AddItem("Radio 3")
	var_Items:[CellHasRadioButton,h,0] := true
	var_Items:[CellRadioGroup,h,0] := 1234

516
The Column.Alignment property does not seem to work for cells with images in them. What can be done

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
oDCOCX_Exontrol1:TreeColumnIndex := -1
oDCOCX_Exontrol1:DrawGridLines := exAllLines
oDCOCX_Exontrol1:HeaderHeight := 24
oDCOCX_Exontrol1:MarkSearchColumn := false
oDCOCX_Exontrol1:DefaultItemHeight := 24
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Image")}
	var_Column:AllowSizing := false
	var_Column:Width := 32
	var_Column:HTMLCaption := "<img>1</img>"
	var_Column:HeaderAlignment := CenterAlignment
	var_Column:Alignment := CenterAlignment
	var_Column:[Def,exCellCaptionFormat] := 1
oDCOCX_Exontrol1:Columns:Add("Rest")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("<img>1</img>")
	var_Items:AddItem("<img>2</img>")
	var_Items:AddItem("<img>3</img>")
oDCOCX_Exontrol1:EndUpdate()

515
Can I change the format of date to be shown in the control

local var_Column,var_Column1,var_Column2 as IColumn
local var_Columns as IColumns
local var_Items as IItems

var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Default")
	var_Column := IColumn{var_Columns:Add("Format.1")}
		var_Column:ComputedField := "%0"
		var_Column:FormatColumn := "dateF(value) replace `/` with `-`"
	var_Column1 := IColumn{var_Columns:Add("Format.2")}
		var_Column1:ComputedField := "%0"
		var_Column1:[Def,exCellCaptionFormat] := 1
		var_Column1:FormatColumn := "`<b>`+ shortdate(value) + `</b> ` + timeF(value)"
	var_Column2 := IColumn{var_Columns:Add("Format.3")}
		var_Column2:ComputedField := "%0"
		var_Column2:[Def,exCellCaptionFormat] := 1
		var_Column2:FormatColumn := "( dateF(value) replace `/` with `-` ) + ` <b>`+ ( weekday(value) case ( 0 : `Su`; 1 : `Mo`; 2 : `Tu`; 3 : `We`; 4 : `Th`; 5 : `Fr`; 6 : `Sa`) )"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem(SToD("20010101 10:00:00"))
	var_Items:AddItem(SToD("20010102 10:00:00"))

514
Is it possible to scroll the control's content by clicking and dragging

local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:ContinueColumnScroll := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:AutoDrag := exAutoDragScroll
oDCOCX_Exontrol1:EndUpdate()

513
How can copy and paste the selection to Microsoft Word, any OLE compliant application, as a snapshot
local var_Items as IItems
local h,h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:VisualAppearance:Add(1,"c:\exontrol\images\normal.ebn")
oDCOCX_Exontrol1:[HTMLPicture,"p1"] := "c:\exontrol\images\card.png"
oDCOCX_Exontrol1:[HTMLPicture,"p2"] := "c:\exontrol\images\sun.png"
oDCOCX_Exontrol1:AutoDrag := exAutoDragCopySnapShot
oDCOCX_Exontrol1:LinesAtRoot := exNoLinesAtRoot
oDCOCX_Exontrol1:HasLines := exThinLine
oDCOCX_Exontrol1:ShowFocusRect := false
oDCOCX_Exontrol1:DefaultItemHeight := 26
oDCOCX_Exontrol1:Columns:Add("Task")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("<img>p1:32</img>Group 1")
	var_Items:[CellCaptionFormat,h,0] := exHTML
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemBold,h] := true
	h1 := var_Items:InsertItem(h,nil,"Task 1")
	h2 := var_Items:InsertItem(h,nil,"Task 2")
	h3 := var_Items:InsertItem(h,nil,"Task 3")
	h := var_Items:AddItem("<img>p2:32</img>Group 2")
	var_Items:[CellCaptionFormat,h,0] := exHTML
	var_Items:[ItemBold,h] := true
	var_Items:[ItemDivider,h] := 0
	h1 := var_Items:InsertItem(h,nil,"Task")
	var_Items:[ExpandItem,0] := true
oDCOCX_Exontrol1:EndUpdate()

512
How can copy and paste the selection to Microsoft Word, any OLE compliant application, as a image

local var_Items as IItems
local h,var_HTMLPicture as USUAL
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:[HTMLPicture,"p1"] := "c:\exontrol\images\card.png"
oDCOCX_Exontrol1:[HTMLPicture,"p2"] := "c:\exontrol\images\sun.png"
var_HTMLPicture := oDCOCX_Exontrol1:[HTMLPicture,"aka1"]
oDCOCX_Exontrol1:HeaderHeight := 24
oDCOCX_Exontrol1:DefaultItemHeight := 48
oDCOCX_Exontrol1:DrawGridLines := exRowLines
oDCOCX_Exontrol1:GridLineColor := RGB(240,240,240)
oDCOCX_Exontrol1:SelBackMode := exTransparent
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:ContinueColumnScroll := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:Columns:[Item,0]:[Def,exCellCaptionFormat] := 1
oDCOCX_Exontrol1:Columns:[Item,0]:FormatColumn := "value + ` <img>p` + (1 + (value mod 3 ) ) + `</img>`"
oDCOCX_Exontrol1:Columns:[Item,0]:Width := 112
oDCOCX_Exontrol1:Columns:[Item,1]:[Def,exCellHasCheckBox] := 1
oDCOCX_Exontrol1:Columns:[Item,2]:LevelKey := "1"
oDCOCX_Exontrol1:Columns:[Item,3]:LevelKey := "1"
oDCOCX_Exontrol1:Columns:[Item,4]:LevelKey := "1"
oDCOCX_Exontrol1:AutoDrag := exAutoDragCopyImage
oDCOCX_Exontrol1:SingleSel := false
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:[ItemByIndex,1]
	var_Items:[SelectItem,h] := true
	h := var_Items:[ItemByIndex,2]
	var_Items:[SelectItem,h] := true
	h := var_Items:[ItemByIndex,3]
	var_Items:[SelectItem,h] := true
	var_Items:[LockedItemCount,BottomAlignment] := 1
	h := var_Items:[LockedItem,BottomAlignment,0]
	var_Items:[CellCaption,h,1] := "<font ;16>Click the selection and <b>wait to start dragging</b>, and then drop to Microsoft Word, ..."
	var_Items:[CellSingleLine,h,1] := exCaptionWordWrap
	var_Items:[CellCaptionFormat,h,1] := exHTML
	var_Items:[CellHAlignment,h,1] := CenterAlignment
	var_Items:[ItemDivider,h] := 1
	var_Items:[ItemDividerLineAlignment,h] := DividerTop
oDCOCX_Exontrol1:EndUpdate()

511
How can copy and paste the selection to Microsoft Word, Excel or any OLE compliant application, as a text

local var_Items as IItems
local h as USUAL
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:ContinueColumnScroll := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExTree\Sample\Access\sample.mdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:Columns:[Item,2]:LevelKey := "1"
oDCOCX_Exontrol1:Columns:[Item,3]:LevelKey := "1"
oDCOCX_Exontrol1:Columns:[Item,4]:LevelKey := "1"
oDCOCX_Exontrol1:AutoDrag := exAutoDragCopyText
oDCOCX_Exontrol1:SingleSel := false
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:[ItemByIndex,1]
	var_Items:[SelectItem,h] := true
	h := var_Items:[ItemByIndex,3]
	var_Items:[SelectItem,h] := true
	h := var_Items:[ItemByIndex,4]
	var_Items:[SelectItem,h] := true
	h := var_Items:[ItemByIndex,5]
	var_Items:[SelectItem,h] := true
	var_Items:[LockedItemCount,BottomAlignment] := 1
	h := var_Items:[LockedItem,BottomAlignment,0]
	var_Items:[CellCaption,h,0] := "<font ;16>Click the selection and <b>wait to start dragging</b>, and then drop to Microsoft Word, Excel, ..."
	var_Items:[CellSingleLine,h,0] := exCaptionWordWrap
	var_Items:[CellCaptionFormat,h,0] := exHTML
	var_Items:[CellHAlignment,h,0] := CenterAlignment
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemDividerLineAlignment,h] := DividerTop
oDCOCX_Exontrol1:EndUpdate()

510
Is it possible to change the indentation during the drag and drop

local var_Items as IItems
local h,h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:VisualAppearance:Add(1,"c:\exontrol\images\normal.ebn")
oDCOCX_Exontrol1:AutoDrag := exAutoDragPositionAny
oDCOCX_Exontrol1:LinesAtRoot := exNoLinesAtRoot
oDCOCX_Exontrol1:HasLines := exSolidLine
oDCOCX_Exontrol1:HasButtons := exWPlus
oDCOCX_Exontrol1:ShowFocusRect := false
oDCOCX_Exontrol1:SelBackMode := exTransparent
oDCOCX_Exontrol1:Columns:Add("Task")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Group 1")
	var_Items:[ItemBold,h] := true
	var_Items:[ItemDivider,h] := 0
	h1 := var_Items:InsertItem(h,nil,"Task 1")
	h2 := var_Items:InsertItem(h1,nil,"Task 2")
	h2 := var_Items:InsertItem(h1,nil,"Task 3")
	h3 := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:[ExpandItem,h] := true
	var_Items:[ExpandItem,h1] := true
	h := var_Items:AddItem("Group 2")
	var_Items:[ItemBold,h] := true
	var_Items:[ItemDivider,h] := 0
	var_Items:[LockedItemCount,BottomAlignment] := 1
	h := var_Items:[LockedItem,BottomAlignment,0]
	var_Items:[CellCaption,h,0] := "Click a row, and move by dragging <b>up, down</b> to change the row's parent or <b>left,right</b> to increase or decrease the indentation."
	var_Items:[CellSingleLine,h,0] := exCaptionWordWrap
	var_Items:[CellCaptionFormat,h,0] := exHTML
oDCOCX_Exontrol1:EndUpdate()

509
Is it possible to allow moving an item to another, but keeping its indentation

local var_Items as IItems
local h,h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:VisualAppearance:Add(1,"c:\exontrol\images\normal.ebn")
oDCOCX_Exontrol1:AutoDrag := exAutoDragPositionKeepIndent
oDCOCX_Exontrol1:LinesAtRoot := exNoLinesAtRoot
oDCOCX_Exontrol1:HasLines := exThinLine
oDCOCX_Exontrol1:ShowFocusRect := false
oDCOCX_Exontrol1:Columns:Add("Task")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Group 1")
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemBold,h] := true
	h1 := var_Items:InsertItem(h,nil,"Task 1")
	h2 := var_Items:InsertItem(h,nil,"Task 2")
	h3 := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Group 2")
	var_Items:[ItemBold,h] := true
	var_Items:[ItemDivider,h] := 0
oDCOCX_Exontrol1:EndUpdate()

508
How can I change the row's position to another, by drag and drop. Is it possible

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ShowFocusRect := false
oDCOCX_Exontrol1:VisualAppearance:Add(1,"c:\exontrol\images\normal.ebn")
oDCOCX_Exontrol1:AutoDrag := exAutoDragPosition
oDCOCX_Exontrol1:Columns:Add("Task")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Task 1")
	var_Items:AddItem("Task 2")
	var_Items:AddItem("Task 3")
	var_Items:AddItem("Task 4")
oDCOCX_Exontrol1:EndUpdate()

507
How do I enable the scrollbar-extension, as thumb to be shown outside of the control's client area


oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ScrollBars := exDisableBoth
oDCOCX_Exontrol1:[ScrollPartVisible,exVScroll,exExtentThumbPart] := true
oDCOCX_Exontrol1:[ScrollPartVisible,exHScroll,exExtentThumbPart] := true
oDCOCX_Exontrol1:[ScrollPartVisible,0x2 | ,exExtentThumbPart] := true
oDCOCX_Exontrol1:ScrollWidth := 4
oDCOCX_Exontrol1:[Background,exVSBack] := RGB(240,240,240)
oDCOCX_Exontrol1:[Background,exVSThumb] := RGB(128,128,128)
oDCOCX_Exontrol1:ScrollHeight := 4
oDCOCX_Exontrol1:[Background,exHSBack] := oDCOCX_Exontrol1:[Background,exVSBack]
oDCOCX_Exontrol1:[Background,exHSThumb] := oDCOCX_Exontrol1:[Background,exVSThumb]
oDCOCX_Exontrol1:[Background,exScrollSizeGrip] := oDCOCX_Exontrol1:[Background,exVSBack]
oDCOCX_Exontrol1:EndUpdate()

506
How can I have a case-insensitive filter (exFilterDoCaseSensitive flag is not set)

local var_Column,var_Column1 as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:MarkSearchColumn := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Column := IColumn{var_Columns:Add("Car")}
		var_Column:DisplayFilterButton := true
		var_Column:FilterType := exFilter
		var_Column:Filter := "MAZDA"
	var_Column1 := IColumn{var_Columns:Add("Equipment")}
		var_Column1:DisplayFilterButton := true
		var_Column1:DisplayFilterPattern := false
		var_Column1:CustomFilter := "Air Bag||*Air Bag*|||Air condition||*Air condition*|||ABS||*ABS*|||ESP||*ESP*"
		var_Column1:FilterType := exPattern
		var_Column1:Filter := "AIR BAG"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Mazda"),1] := "Air Bag"
	var_Items:[CellCaption,var_Items:AddItem("Toyota"),1] := "Air Bag,Air condition"
	var_Items:[CellCaption,var_Items:AddItem("Ford"),1] := "Air condition"
	var_Items:[CellCaption,var_Items:AddItem("Nissan"),1] := "Air Bag,ABS,ESP"
	var_Items:[CellCaption,var_Items:AddItem("Mazda"),1] := "Air Bag, ABS,ESP"
	var_Items:[CellCaption,var_Items:AddItem("Mazda"),1] := "ABS,ESP"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

505
How can I have a case-sensitive filter

local var_Column,var_Column1 as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:MarkSearchColumn := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Column := IColumn{var_Columns:Add("Car")}
		var_Column:DisplayFilterButton := true
		var_Column:FilterType := exFilterDoCaseSensitive | exFilter
		var_Column:Filter := "Mazda"
	var_Column1 := IColumn{var_Columns:Add("Equipment")}
		var_Column1:DisplayFilterButton := true
		var_Column1:DisplayFilterPattern := false
		var_Column1:CustomFilter := "Air Bag||*Air Bag*|||Air condition||*Air condition*|||ABS||*ABS*|||ESP||*ESP*"
		var_Column1:FilterType := exFilterDoCaseSensitive | exPattern
		var_Column1:Filter := "Air Bag"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellCaption,var_Items:AddItem("Mazda"),1] := "Air Bag"
	var_Items:[CellCaption,var_Items:AddItem("Toyota"),1] := "Air Bag,Air condition"
	var_Items:[CellCaption,var_Items:AddItem("Ford"),1] := "Air condition"
	var_Items:[CellCaption,var_Items:AddItem("Nissan"),1] := "Air Bag,ABS,ESP"
	var_Items:[CellCaption,var_Items:AddItem("Mazda"),1] := "Air Bag, ABS,ESP"
	var_Items:[CellCaption,var_Items:AddItem("Mazda"),1] := "ABS,ESP"
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

504
I have several columns, but noticed that the filter is using AND between columns, but I need OR clause for filtering. Is it possible

local var_Column,var_Column1 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Item")}
	var_Column:DisplayFilterButton := true
	var_Column:DisplayFilterPattern := false
	var_Column:Filter := "Child 1"
	var_Column:FilterType := exFilter
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Date")}
	var_Column1:DisplayFilterButton := true
	var_Column1:DisplayFilterPattern := false
	var_Column1:DisplayFilterDate := true
	var_Column1:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exNoItems
	var_Column1:Filter := AsString(SToD("20101228"))
	var_Column1:FilterType := exDate
oDCOCX_Exontrol1:FilterCriteria := "%0 or %1"
oDCOCX_Exontrol1:[Description,exFilterBarOr] := "<font ;18><fgcolor=FF0000>or</fgcolor></font>"
oDCOCX_Exontrol1:[Description,exFilterBarAnd] := "<font ;18><fgcolor=FF0000>and</fgcolor></font>"
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root 1")
	var_Items:[CellCaption,var_Items:InsertItem(h,nil,"Child 1"),1] := SToD("20101227")
	var_Items:[CellCaption,var_Items:InsertItem(h,nil,"Child 2"),1] := SToD("20101228")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Root 2")
	var_Items:[CellCaption,var_Items:InsertItem(h,nil,"Child 1"),1] := SToD("20101229")
	var_Items:[CellCaption,var_Items:InsertItem(h,nil,"Child 2"),1] := SToD("20101230")
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()

503
Is it possible exclude the dates being selected in the drop down filter window

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Date")}
	var_Column:SortType := SortDate
	var_Column:DisplayFilterButton := true
	var_Column:DisplayFilterPattern := false
	var_Column:DisplayFilterDate := true
	var_Column:FilterList := exShowExclude | exShowFocusItem | exShowCheckBox | exNoItems
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem(SToD("20101227"))
	var_Items:AddItem(SToD("20101228"))
	var_Items:AddItem(SToD("20101229"))
	var_Items:AddItem(SToD("20101230"))
	var_Items:AddItem(SToD("20101231"))
oDCOCX_Exontrol1:EndUpdate()

502
How can I display a calendar control inside the drop down filter window

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Date")}
	var_Column:SortType := SortDate
	var_Column:DisplayFilterButton := true
	var_Column:DisplayFilterPattern := false
	var_Column:DisplayFilterDate := true
	var_Column:FilterList := exShowFocusItem | exShowCheckBox | exNoItems
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem(SToD("20101227"))
	var_Items:AddItem(SToD("20101228"))
	var_Items:AddItem(SToD("20101229"))
	var_Items:AddItem(SToD("20101230"))
	var_Items:AddItem(SToD("20101231"))
oDCOCX_Exontrol1:EndUpdate()

501
Is it possible to include the dates as checkb-boxes in the drop down filter window

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Dates")}
	var_Column:SortType := SortDate
	var_Column:DisplayFilterButton := true
	var_Column:DisplayFilterPattern := true
	var_Column:DisplayFilterDate := true
	var_Column:FilterList := exShowFocusItem | exShowCheckBox
	var_Column:Filter := "to 12/27/2010"
	var_Column:FilterType := exDate
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem(SToD("20101227"))
	var_Items:AddItem(SToD("20101228"))
	var_Items:AddItem(SToD("20101229"))
	var_Items:AddItem(SToD("20101230"))
	var_Items:AddItem(SToD("20101231"))
oDCOCX_Exontrol1:ApplyFilter()
oDCOCX_Exontrol1:EndUpdate()